package com.sun;

import org.junit.jupiter.api.Test;

/**
 * @Project: hospitalDrugInformationManagement
 * @Author: 86178
 * @Date: 2023/3/26 17:01
 * @FileName: testDate
 * @Description: ""
 */
public class testDate {


    @Test
    public void testCalculate() {

    }

//
//    public void updateWithPurchaseDetail(PurchaseDto purchaseDto) {
//        //先更新采购单单头的信息
//        this.updateById(purchaseDto);
//        //再更新采购单单目的信息
//        //先把采购单目查询出来和新的比较如果存在就更新，不存在就新增，新的数据没有就删除
//        //查询历史数据
//        LambdaQueryWrapper<PurchaseDetail> lambdaQueryWrapper = new LambdaQueryWrapper<>();
//        lambdaQueryWrapper.eq(PurchaseDetail::getPurchaseId, purchaseDto.getPurchaseId());
//        List<PurchaseDetail> oldData = purchaseDetailService.list(lambdaQueryWrapper);
//        //新的数据
//        List<PurchaseDetail> dtoPurchaseDetails = purchaseDto.getPurchaseDetails();
//        //进行比较
//        // 遍历新数据列表
//        for (PurchaseDetail newData : dtoPurchaseDetails) {
//            boolean flag = true; // 是否需要新增
//            int i = 0; // 在历史数据列表中的位置
//            // 遍历历史数据列表
//            for (i = 0; i < oldData.size(); i++) {
//                PurchaseDetail oldPurchaseDetail = oldData.get(i);
//                boolean exist = false; // 是否存在于新数据列表中
//                // 比较历史数据和新数据
//                if (newData.getId() != null && newData.getId().equals(oldPurchaseDetail.getId())) {
//                    // 需要更新
//                    flag = false;
//                    purchaseDetailService.updateById(newData);
//                    continue;
//                }
//                // 判断历史数据是否存在于新数据列表中
//                for (PurchaseDetail item : dtoPurchaseDetails) {
//                    if (oldPurchaseDetail.getId().equals(item.getId())) {
//                        exist = true;
//                        break;
//                    }
//                }
//                if (!exist) {
//                    // 需要删除
//                    purchaseDetailService.removeById(oldPurchaseDetail.getId());
//                }
//            }
//            if (flag) {
//                // 需要新增
//                newData.setPurchaseId(purchaseDto.getPurchaseId());
//                purchaseDetailService.save(newData);
//            }
//        }
//    }
}
